#!/bin/bash

echo "🚀 开始设置 OffGrid 后台管理系统..."

# 检查Node.js版本
echo "📋 检查Node.js版本..."
node_version=$(node -v)
if [ "$node_version" != "v16.16.0" ]; then
    echo "❌ 错误: 需要Node.js 16.16.0，当前版本: $node_version"
    exit 1
fi
echo "✅ Node.js版本检查通过: $node_version"

# 检查npm版本
echo "📋 检查npm版本..."
npm_version=$(npm -v | cut -d'.' -f1)
if [ "$npm_version" -lt 8 ]; then
    echo "❌ 错误: 需要npm 8或更高版本"
    exit 1
fi
echo "✅ npm版本检查通过: $(npm -v)"

# 安装依赖
echo "📦 安装项目依赖..."
npm install

# 创建环境变量文件
echo "⚙️  创建环境变量文件..."
if [ ! -f .env ]; then
    cp env.example .env
    echo "✅ 已创建 .env 文件，请编辑配置数据库连接信息"
else
    echo "ℹ️  .env 文件已存在"
fi

# 创建日志目录
echo "📁 创建日志目录..."
mkdir -p logs

# 创建上传目录
echo "📁 创建上传目录..."
mkdir -p uploads

# 生成Prisma客户端
echo "🔧 生成Prisma客户端..."
npx prisma generate

echo ""
echo "🎉 项目设置完成！"
echo ""
echo "📝 接下来的步骤："
echo "1. 编辑 .env 文件，配置数据库连接信息"
echo "2. 创建MySQL数据库: CREATE DATABASE offgrid_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
echo "3. 运行数据库迁移: npm run db:migrate"
echo "4. 初始化数据库: npm run db:seed"
echo "5. 启动开发服务器: npm run dev"
echo ""
echo "🔗 相关链接："
echo "- API文档: http://localhost:3000/api-docs"
echo "- 健康检查: http://localhost:3000/health"
echo ""
echo "👤 默认管理员账户："
echo "- 用户名: admin"
echo "- 密码: admin123"
echo "- 邮箱: admin@offgrid.com" 